RZ
Section: User Commands (1)
Updated: OMEN
Index
Return to Main Contents
NAME
rx, rb, rz - XMODEM, YMODEM, ZMODEM (Batch) file receive
SYNOPSIS
rz
[- +1abepqtuv]
rb
[- +1abqtuv]
rz
[- 1abceqtuv]
file
gz
file ...
[-][v]rzCOMMAND
DESCRIPTION
This program uses error correcting protocol to receive
files over a serial port from a variety of programs running under
PC-DOS, CP/M,
Unix,
and other operating systems.
The first form of
rz
(Receive ZMODEM)
receives files with the ZMODEM batch protocol.
If the sending program does not support ZMODEM,
rz
steps down to YMODEM protocol
after 50 seconds.
This delay can be eliminated by invoking the program as
rb .
When receiving with XMODEM or YMODEM,
Rz
accepts either standard 128 byte sectors or
1024 byte sectors
(YAM
-k
option).
The user should determine when
the longer block length
actually improves throughput without causing problems.
If extended file information (file length, etc.)
is received,
the file length controls the number of bytes written to
the output dataset (YMODEM only),
and the modify time and file mode
(iff non zero)
are set accordingly.
If no extended file information is received,
slashes in the pathname are changed to underscore,
and any trailing period in the pathname is eliminated.
This conversion is useful for files received from CP/M systems.
With YMODEM, each file name is converted to lower case
unless it contains one or more lower case letters.
The second form of
rz
receives a single
file
with XMODEM protocol.
The user must supply the file name to both sending and receiving programs.
Gz
is a shell script which calls
sz
to command Pro-YAM or ZCOMM to transmit the specified files.
Pathnames used with
gz
must be escaped if they have special significance to the Unix shell.
EXAMPLE:
gz "-a C:*.c D:*.h"
The third form of
rz
is invoked as
rzCOMMAND
(with an optional leading - as generated by login(1)).
For each received file,
rz will pipe the file to ``COMMAND filename''
where filename is the name of the transmitted file
with the file contents as standard input.
Each file transfer is acknowledged when COMMAND exits with 0 status.
A non zero exit status terminates transfers.
A typical use for this form is
rzrmail
which calls rmail(1)
to post mail to the user specified by the transmitted file name.
For example, sending the file "caf" from a PC-DOS system to
rzrmail
on a
Unix
system
would result in the contents of the DOS file "caf" being mailed to user "caf".
On some
Unix
systems, the login directory must contain a link to
COMMAND as login sets SHELL=rsh which disallows absolute
pathnames.
If invoked with a leading ``v'',
rz
will report progress to /tmp/rzlog.
The following entry works for
Unix
3.0:
rzrmail::5:1::/bin:/usr/local/rzrmail
If the SHELL environment variable includes
rsh
or
rksh
(restricted shell),
rz will not accept absolute pathnames
or references to a parent directory,
will not modify an existing file, and
removes any files received in error.
If
rz
is invoked with stdout and stderr to different datasets,
Verbose is set to 2, causing frame by frame progress reports
to stderr.
This may be disabled with the
q
option.
The meanings of the available options are:
- 1
-
Use file descriptor 1 for ioctls and reads (Unix only).
By default, file descriptor 0 is used for ioctls and reads.
This option allows
rz
to be used with the
Professional-YAM
$
command
and some versions of ncu(1).
- a
-
Convert files to
Unix
conventions by stripping carriage returns and all characters
beginning with the first Control Z (CP/M end of file).
- b
-
Binary
(tell it like it is)
file transfer override.
- c
-
Request 16 bit CRC.
XMODEM file transfers default to 8 bit checksum.
YMODEM and ZMODEM normally use 16 bit CRC.
- D
-
Output file data to /dev/null; for testing.
- e
-
Force sender to escape all control characters;
normally XON, XOFF, DLE, CR-@-CR, and Ctrl-X are escaped.
- p
-
(ZMODEM) Protect: skip file if destination file exists.
- q
-
Quiet suppresses verbosity.
- t tim
-
Change timeout to
tim
tenths of seconds.
- v
-
Verbose
causes a list of file
names to be appended to
/tmp/rzlog .
More v's generate more output.
EXAMPLES
(Pro-YAM command)
-
<ALT-2>
Pro-YAM Command:
sz *.h *.c
(This automatically invokes
rz
on the connected system.)
SEE ALSO
ZMODEM.DOC,
YMODEM.DOC,
IMP(CP/M),
Professional-YAM,
sz(omen),
usq(omen),
undos(omen)
Compile time options required
for various operating systems are described in the
source file.
NOTES
The Unix "ulimit" parameter must be set high enough
to permit large file transfers.
The TTY input buffering on some systems may not allow long blocks
or streaming input at high speed.
You should suspect this problem when you
can't send data to the Unix system at high speeds using ZMODEM
when YMODEM with 128 byte blocks works properly.
If the system's tty line handling is really broken, the serial port
or the entire system may not survive the onslaught of long bursts
of high speed data.
The DSZ or Pro-YAM
zmodem l
numeric parameter may be set to a value between 64 and 1024 to limit the
burst length ("zmodem pl128").
32 bit CRC code courtesy Gary S. Brown.
BUGS
Calling
rz
from most versions of cu(1) doesn't work because cu's receive process
fights
rz
for characters from the modem.
Programs that do not properly implement the specified file transfer protocol
may cause
sz
to "hang" the port for a minute or two.
Every reported instance of this problem has been corrected by using
ZCOMM, Pro-YAM, or other program with a correct implementation
of the specified protocol.
Many programs claiming to support YMODEM only support XMODEM with 1k blocks,
and they often don't get that quite right.
Pathnames are restricted to 127 characters.
In XMODEM single file mode, the pathname given on the command line
is still processed as described above.
The ASCII option's CR/LF to NL translation merely deletes CR's;
undos(omen) performs a more intelligent translation.
VMS VERSION
Some of the #includes with file names enclosed with angle brackets <>
may need to have the angle brackets changed to "", or vice versa.
The VMS version does not set binary mode according to the incoming
file type.
Non binary file processing consists of stripping all characters beginning
with CPMEOF (^Z).
The VMS version does not set the file time.
At high speeds,
VMS sometimes loses incoming characters, resulting in retries
and degradation of throughput.
The mysterious
VMS C Standard I/O Package and RMS may interact to modify
file contents unexpectedly.
The VMS version does not support invocation as
rzCOMMAND .
ZMODEM has not yet been implemented on the VMS version.
ZMODEM CAPABILITIES
Rz
supports incoming ZMODEM binary (-b), ASCII (-a),
protect (-p),
and append (-+)
requests, and ZMODEM command execution.
FILES
rz.c, rbsb.c, zm.c, zmodem.h source files.
/tmp/rzlog stores debugging output generated with -vv option.
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- EXAMPLES
-
- SEE ALSO
-
- NOTES
-
- BUGS
-
- VMS VERSION
-
- ZMODEM CAPABILITIES
-
- FILES
-
This document was created by
man2html,
using the manual pages.
Time: 18:39:11 GMT, February 23, 2025